#ifndef APPCONFIGCONSTANTS_H
#define APPCONFIGCONSTANTS_H

// AppConfigConstants.h

// 配置组名
const char* const GROUP_FONT_SETTINGS = "FontSettings";
const char* const GROUP_TIMER_SETTINGS = "TimerSettings";
const char* const GROUP_FORMAT_TYPE_SETTINGS = "FormatTypeSettings";
const char* const GROUP_BACKGROUND_SETTINGS = "BackgroundSettings";
const char* const GROUP_PLAYBACK_SETTINGS = "PlaybackSettings";
const char* const GROUP_TIMEOUT_ACTION_SETTINGS = "TimeoutActionSettings";
const char* const GROUP_SOUND_SETTINGS = "SoundSettings";
const char* const GROUP_APP_SETTINGS = "AppSettings";
const char* const GROUP_SCREENSHOT_SETTINGS = "ScreenshotSettings";

// 配置键名 - FontSettings
const char* const KEY_FONT_FAMILY = "family";
const char* const KEY_FONT_SIZE = "size";
const char* const KEY_FONT_BOLD = "bold";
const char* const KEY_FONT_ITALIC = "italic";
const char* const KEY_FONT_UNDERLINE = "underline";

// 配置键名 - TimerConfig
const char* const KEY_TIMER_ENABLED = "Enabled";
const char* const KEY_TIMER_MODE = "Mode";
const char* const KEY_TIMER_DURATION = "Duration";
const char* const KEY_TIMER_ALARM1 = "Alarm1";
const char* const KEY_TIMER_ALARM2 = "Alarm2";
const char* const KEY_TIMER_ALARM3 = "Alarm3";
const char* const KEY_TIMER_ALARM1_ENABLE = "Alarm1Enable";
const char* const KEY_TIMER_ALARM2_ENABLE = "Alarm2Enable";
const char* const KEY_TIMER_ALARM3_ENABLE = "Alarm3Enable";
const char* const KEY_TIMER_TIMEOUT = "Timeout";
const char* const KEY_TIMER_TIMEOUT_ENABLE = "TimeoutEnable";
const char* const KEY_TIMER_CONTINUOUS_REMINDER = "ContinuousReminder";

// 配置键名 - BackgroundSettings
const char* const KEY_BG_TRANSPARENT = "IsTransparent";
const char* const KEY_BG_FILE_PATH = "FilePath";
const char* const KEY_BG_RADIUS = "Radius";

// 配置键名 - PlaybackSettings
const char* const KEY_PLAYBACK_SMART_TIMING = "SmartTiming";
const char* const KEY_PLAYBACK_TIMELY_SETTING = "TimelySetting";
const char* const KEY_PLAYBACK_PAUSE_TIMING = "PauseTiming";
const char* const KEY_PLAYBACK_NO_SWITCH_TIME = "NoSwitchTime";
const char* const KEY_PLAYBACK_HIDE_NOT_TIMING = "HideWhenNotTiming";
const char* const KEY_PLAYBACK_DUAL_SCREEN = "DualScreenDisplay";

// 配置键名 - TimeoutActionSettings
const char* const KEY_TIMEOUT_ACTION_TYPE = "ActionType";
const char* const KEY_TIMEOUT_SCREEN_ACTION = "ScreenAction";

// 配置键名 - SoundSettings
const char* const KEY_SOUND_START_FILE_PATH = "StartSoundFilePath";
const char* const KEY_SOUND_START_ENABLED = "StartSoundEnabled";
const char* const KEY_SOUND_START_FLASHING = "StartFlashing";
const char* const KEY_SOUND_START_TEXT_VISIBLE = "StartTextVisible";

const char* const KEY_SOUND_ALARM1_FILE_PATH = "Alarm1SoundFilePath";
const char* const KEY_SOUND_ALARM1_ENABLED = "Alarm1SoundEnabled";
const char* const KEY_SOUND_ALARM1_FLASHING = "Alarm1Flashing";
const char* const KEY_SOUND_ALARM1_TEXT_VISIBLE = "Alarm1TextVisible";

const char* const KEY_SOUND_ALARM2_FILE_PATH = "Alarm2SoundFilePath";
const char* const KEY_SOUND_ALARM2_ENABLED = "Alarm2SoundEnabled";
const char* const KEY_SOUND_ALARM2_FLASHING = "Alarm2Flashing";
const char* const KEY_SOUND_ALARM2_TEXT_VISIBLE = "Alarm2TextVisible";

const char* const KEY_SOUND_ALARM3_FILE_PATH = "Alarm3SoundFilePath";
const char* const KEY_SOUND_ALARM3_ENABLED = "Alarm3SoundEnabled";
const char* const KEY_SOUND_ALARM3_FLASHING = "Alarm3Flashing";
const char* const KEY_SOUND_ALARM3_TEXT_VISIBLE = "Alarm3TextVisible";

const char* const KEY_SOUND_TIMEOUT_FILE_PATH = "TimeoutSoundFilePath";
const char* const KEY_SOUND_TIMEOUT_ENABLED = "TimeoutSoundEnabled";
const char* const KEY_SOUND_TIMEOUT_FLASHING = "TimeoutFlashing";
const char* const KEY_SOUND_TIMEOUT_TEXT_VISIBLE = "TimeoutTextVisible";

const char* const KEY_SOUND_END_FILE_PATH = "EndSoundFilePath";
const char* const KEY_SOUND_END_ENABLED = "EndSoundEnabled";
const char* const KEY_SOUND_END_FLASHING = "EndFlashing";
const char* const KEY_SOUND_END_TEXT_VISIBLE = "EndTextVisible";


// 其他 Alarm1, Alarm2, Alarm3, Timeout 和 End 音频设置，类似上面的方式定义

// 配置键名 - AppSettings
const char* const KEY_APP_MAC_ADDRESS = "MacAddress";
const char* const KEY_APP_PERMISSION_LEVEL = "PermissionLevel";
const char* const KEY_APP_ACTIVATION_DURATION = "ActivationDuration";
const char* const KEY_APP_SN = "SN";

const char* const KEY_FORMAT_TYPE = "FormatType";

// Screenshot settings
const char* const KEY_SS_DEFAULT_SAVE_PATH = "DefaultSavePath";
const char* const KEY_SS_DEFAULT_FILE_NAME = "DefaultFileName";
const char* const KEY_SS_DEFAULT_FORMAT = "DefaultFormat"; // png/jpg
const char* const KEY_SS_JPEG_QUALITY = "JpegQuality";     // 0-100
const char* const KEY_SS_AUTO_COPY = "AutoCopyToClipboard";
const char* const KEY_SS_AUTO_SAVE = "AutoSave";

// Global sound controls (persisted under SoundSettings)
const char* const KEY_SOUND_GLOBAL_MUTED = "GlobalMuted";          // bool
const char* const KEY_SOUND_GLOBAL_VOLUME = "GlobalVolume";        // int 0-100
const char* const KEY_SOUND_TICK_ENABLE = "TickEnable";            // bool
const char* const KEY_SOUND_TICK_INTERVAL = "TickIntervalMs";      // int ms
#endif // APPCONFIGCONSTANTS_H
